package org.global.utils;

import java.util.ArrayList;
import java.util.List;
import java.util.regex.Pattern;

public class FieldUtils {
    private final static List<Pattern> basicType = new ArrayList<>();

    static {
        basicType.add(Pattern.compile("int|long|short|byte|double|float|char|boolean"));
        basicType.add(Pattern.compile("java\\.util\\..*|java\\.lang\\..*"));
    }

    /**
     * 在深度搜索的时候，一些数据类型是不需要继续往下搜索。
     * 所以需要把这些不需要继续搜索的类型屏蔽掉。
     * @param type 数据类型
     * @return 类型是否需要搜索
     */
    public static boolean isBaseType(String type) {
        for (Pattern pattern : basicType) {
            if (pattern.matcher(type).matches()) {
                return true;
            }
        }
        return false;
    }
}
